package estacionamientoprincipal;

import java.io.*;

public class Leer
{
  public static String dato()
  {
    String sdato = "";
    try
    {
      // Definir un flujo de caracteres de entrada: flujoE
      InputStreamReader isr = new InputStreamReader(System.in);
      BufferedReader flujoE = new BufferedReader(isr);
      // Leer. La entrada finaliza al pulsar la tecla Entrar
      sdato = flujoE.readLine();
    }
    catch(IOException e)
    {
      System.err.println("Error: " + e.getMessage());
    }
    return sdato; // devolver el dato tecleado
  }
  
  public static char Char(String Texto)
  {
  System.out.print(Texto);
    char c=' ';
        BufferedReader Char = new BufferedReader(new InputStreamReader(System.in));
        try
        {
        c = Char.readLine().charAt(0);
        return c;
        } 
        catch(IOException e)
        {
        System.out.println("Error en la lectura de datos.");
        return 0;
        }
  }

  public static short Short(String Texto)
  {
  System.out.print(Texto);
    try
    {
      return Short.parseShort(dato());
    }
    catch(NumberFormatException e)
    {
      return Short.MIN_VALUE; // valor mas pequeno
    }
  }
  
  public static int Int(String Texto)
  {
  System.out.print(Texto);
    try
    {
      return Integer.parseInt(dato());
    }
    catch(NumberFormatException e)
    {
      return Integer.MIN_VALUE; // valor mas pequeno
    }
  }
  
  public static long Long(String Texto)
  {
  System.out.print(Texto);
    try
    {
      return Long.parseLong(dato());
    }
    catch(NumberFormatException e)
    {
      return Long.MIN_VALUE; // valor mas pequeno
    }
  }
  
  public static float Float(String Texto)
  {
  System.out.print(Texto);
    try
    {
      Float f = new Float(dato());
      return f.floatValue();
    }
    catch(NumberFormatException e)
    {
      return Float.NaN; // No es un Numero; valor float.
    }
  }
  
  public static double Double(String Texto)
  {
  System.out.print(Texto);
    try
    {
      Double d = new Double(dato());
      return d.doubleValue();
    }
    catch(NumberFormatException e)
    {
      return Double.NaN; // No es un Numero; valor double.
    }
  }
}
